home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mac Magazin/MacEasy 26
/
Mac Magazin and MacEasy Magazine CD - Issue 26.iso
/
Wissenschaft & Technik
/
TimGA 1.1 ƒ
/
Read Me (TimGA)
< prev
next >
Wrap
Text File
|
1996-08-17
|
12KB
|
289 lines
_______________________________________________________________
TimGA — A freeware Mac application
Version 1.1 (August 1996)
By Timo Eloranta
Copyright © 1995-96 Brown Eyes Software
All rights reserved.
Internet e-mail: timo.eloranta@ac.com
_______________________________________________________________
Contents
• Description
• Thesis
• System Requirements
• List of Files Included
• Quick Instructions
• Known Weaknesses
• Version History
• Credits & Acknowledgments
• Distribution
• Fine Print
• One More Disclaimer...
• Contacting the Author
Description
Given a graph — a bunch of nodes and edges that is — TimGA tries to draw
it as "nicely" as possible by minimizing edge crossings among other things.
The key feature of TimGA is its use of a genetic algorithm (GA).
It is unlikely that anyone (except for myself) will find TimGA useful,
but if you're interested in graph drawing and/or genetic algorithms you'll
stand a good chance of finding TimGA interesting. Screensaver enthusiasts
might also get a kick out of watching those drawings develop — maybe
kids as well...
Thesis
TimGA was the side product of my Master's thesis which handles — not
too surprisingly — the use of genetic algorithms for drawing graphs. The
actual thesis — "Geneettisten algoritmien soveltaminen
suuntaamattomien verkkojen piirtoon" — is available by request
from the University of Tampere (ask for it from Erkki Mäkinen,
em@cs.uta.fi), but it's unfortunately written in Finnish...
The good news is that there's also an article length English version
("TimGA — A Genetic Algorithm For Drawing Undirected Graphs"),
which has been submitted for publication in the International Journal of
Computer Mathematics. For a copy of this article contact the above
mentioned Mr. Mäkinen.
System Requirements
• a Mac equipped with a 68020 or greater CPU
(a 68040 or a PowerPC is highly recommended...)
• MacOS 7.0 or later
• about 1 MB of free RAM
• 13" or larger (640x480 or larger) monitor
• ObjectSupportLib (only PowerMacs need this)
• Note: TimGA is a "fat binary" and runs entirely in native PowerPC
code if you have a PowerMacintosh (or compatible) !
List of Files Included
You should have received TimGA with the following files and folders:
• TimGA 1.1
= The application itself
• ReadMe (TimGA)
= This file
• "Graphs" folder (with subfolders)
= 30+ example graph files. These are in the format that TimGA
understands. Note though that TimGA is in no way restricted to
just these graphs. You can create new graphs yourself (read the
instructions in the "More Documentation" folder) or let TimGA
create random new graphs with the "Rnd New Graph..." command.
FYI, the "Small" graphs have 14-32 edges, the "Bigger" ones
up to 84 edges and the "Heavyweight" graphs (128-276 edges)
should only be tried by PowerMac owners or people who enjoy
waiting...
• "Picts" folder
= A small selection of drawings produced by TimGA (in PICT format).
These files can NOT be opened by TimGA, but instead with Apple's
own SimpleText or just about any graphics program (I recommend
watching these with Aaron Giles' JPEGView in "Slide Show" mode).
Note that TimGA 1.1 does not have a Save command, but you can copy
the drawings to the clipboard with the Copy command and then paste
to any graphics capable program. Alternatively you can capture
drawings with the command-shift-3 snapshot command which
is part of the MacOS.
• "More Documentation" folder
= For descriptions of the various menus & dialogs read the file
"Help (TimGA)". If you'd like to write some graph files yourself
please see the instructions in the file titled "Writing graph files".
Quick Instructions
It doesn't take many steps to put TimGA to work! Here goes...
• Launch the application by double-clicking the icon of the application.
• Now choose either "Open Graph..." or "Rnd New Graph..."
from the "File" menu.
• If you chose to open an existing graph, select one of the graph files
in the "Graphs" folder. I recommend that you start with one of the
files in the "(1) Small graphs" subfolder.
• If you chose to try a random graph, TimGA will ask for the quantity
of nodes and edges. When you're ready, click the OK button.
• At this point you might want to set the termination condition(s) for the
the iteration. It's not obligatory, but if you want, you can do this
with the "Termination..." command in the "Settings" menu.
• Start the action by selecting "Start" from the "Iteration" menu.
TimGA now tries to draw the graph as nicely as possible. The iteration
stops when one of the termination conditions you've set is filled or when
you select "Pause" from the "Iteration" menu. You can try the same
graph again by "rewinding" the iteration with the "Reinitialize" command.
An interesting feature of TimGA is that the resulting drawings differ from
run to run! It's like a box of chocolates, you never know what you get...
Note: To change the size of the drawing grid (the default is 40x40) you
should choose "General..." from the "Settings" menu. Unfortunately
the current version of TimGA does not allow access to this menu item
when there's an "open" graph. The graph must first be closed with the
"Close Graph" command in the "File" menu. Sorry about this!
To learn about the rest of the menu items and the various fields in the
main display read the "Help (TimGA)" file or investigate yourself...
Known Weaknesses
TimGA 1.0 was released almost eight months ago and I haven't yet received
a single bug report. So, TimGA should be stable enough (no cash prices for
finding bugs though!), but it still has plenty of weaknesses and missing
features. Here are the "highlights":
• I know it's slow — especially on 680x0 Macs and/or when drawing big
graphs. But hey, give me some credit! The problem of writing a program
for drawing any kind of graph "nicely" is a rather difficult one...
• The program has no saving. More specifically, you cannot save the state
of iteration (to be continued later) or the produced drawings, and your
settings are not saved to a prefs file. To make the list perfect, there's
no printing either! And what is my excuse? Well, TimGA is an
"academic toy". If the program would have "real users", all of these
lacking features could/should be added.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Version 1.1 fixes some of the problems in this area by allowing you to
copy your drawings to the clipboard. You can then paste the pictures
to any printing capable graphics or word processing program.
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
• Entering your own graphs should be made easier. Currently this is done
by writing a "graph file" with a text editor (if interested, read the
file titled "Writing graph files"), but a simple graph editor with
graphical user interface would of course be much better.
• The thing with General Settings which I mentioned above in the "Quick
Instructions" section. I won't bore you with the reason that's causing
it. I'll probably fix this "feature" if I get enough complaints...
• There's no balloon help (actually there is ONE balloon...) or an Apple
Guide. Adding these is pretty low on my list of things to do...
I'm sure these are not the only weaknesses of TimGA. If you have some other
ideas for improving this program, I'd be interested in hearing them!
Version History
1.1 17 August 1996
• First public release with the new features of 1.0.2
(copy command, grid scaling and the b&w mode).
• Updated the documentation (new contact info etc.)
1.0.2 06 May 1996 (never released to general public)
• Added support for the clipboard (copy command!).
• Added a sort of zooming. You can now manually (and without even
pausing the iteration...) change the grid square size, which affects
the size of the drawing.
• Added support for a b&w mode, which I personally prefer when
copying pictures to clipboard and then printing them with another app.
• Fixed a bug (introduced by version 1.0.1) which caused a crash on
68K Macs when opening a graph file where the graph had >256 edges...
• Removed the job hunt notice from documentation (but you can still
offer me Mac development related positions if you want...).
1.0.1 21 Feb 1996
• Many optimizations. With small graphs the iteration speed is now
roughly 155% faster than with version 1.0. With big graphs
(over 100 edges) the improvement is "only" around 45%.
• Added notes about the Termination dialog to the documentation.
1.0 22 Dec 1995
• Initial public release.
Credits & Acknowledgments
• First of all, my thanks to Erkki Mäkinen, who introduced me to the world
of genetic algorithms and suggested the topic of my Master's thesis.
• For risking their Macs and giving loads of useful comments and
suggestions I'd like to thank my international beta-testing crew:
Eric Allen, Leo Breebaart, Tilman Brodmeier,
Juha Herajärvi, Martin Krueger, Miika Matilainen,
Michael Mitchener, Arne Schirmacher and Javier Sisamón.
• Special thanks to fellow programmers who have released source code,
libraries and PowerPlant classes for others to use and learn from. TimGA
benefits from the following such libraries and PP classes:
• STL by Hewlett-Packard Company
Info available from http://www.cs.rpi.edu/~musser/stl.html
• LProgressIndicator by Chris K. Thomas (ckt@best.com)
• Slider by Scott Squires (squires@crl.com)
LProgressIndicator and Slider are both available from
the PowerPlant Contributed Class Archive at
ftp://atlantis.metrowerks.com/pub/powerplant/
• TimGA 1.1 was created using CodeWarrior 9 (by Metrowerks) and
ResEdit 2.1.3 (by Apple). I highly recommend the PowerPlant
framework which is part of the CodeWarrior package.
• Folder icons were made with Folder Icon Maker 1.5 by Greg Robbins.
Distribution
TimGA is freeware, which means that you can use the program for free
but that I still retain the copyright. More specifically, this program cannot
be sold for a profit or distributed thru a commercial channel
without my written consent. Distribution via online services, BBS's,
Internet, person-to-person and other non-commercial means is acceptable
provided that all original and unaltered files are included in the package.
Fine Print
[ Like I said, TimGA should be very stable, but here comes the boring
stuff anyway... ]
TimGA is supplied "as is". The author makes no warranties, either express
or implied, and will not be liable for any special, incidental, consequential
or indirect damages, including but not limited to loss of data or psychological
damage. The person using this software bears all risk as to its quality and
performance. By using this software, you are subject and agree to the terms
in this disclaimer. In short, use TimGA at your own risk.
One More Disclaimer...
My current employer, which some of you might guess from my e-mail address,
has absolutely _nothing_ to do with TimGA or other freeware programs
which I've released under the title of Brown Eyes Software. Clear enough ?
Contacting the Author
For questions, praise, bug reports (oh no!), comments and job offers, I can be
reached via Internet e-mail at
timo.eloranta@ac.com
or by "snail mail" (postcards would be greatly appreciated!) at
Timo Eloranta
Vänrikki Stoolin katu 10B A2
FIN-00100 Helsinki
Finland (Europe)
_______________________________________________________________